using System;

namespace ThridGroup.ERP.DTO.TransferTransfersDto
{
    /// <summary>
    /// 转移调拨DTO
    /// </summary>
    public class TransferTransfersDto
    {
        /// <summary>
        /// 主键ID
        /// </summary>
        public int Id { get; set; }

        /// <summary>
        /// 转移单编号
        /// </summary>
        public string? TransferCode { get; set; }

        /// <summary>
        /// 转移单名称
        /// </summary>
        public string? TransferName { get; set; }

        /// <summary>
        /// 转移单类型
        /// </summary>
        public string? TransferType { get; set; }

        /// <summary>
        /// 移出仓库
        /// </summary>
        public string? RemoveRepository { get; set; }

        /// <summary>
        /// 移入仓库
        /// </summary>
        public string? MoveWarehouse { get; set; }

        /// <summary>
        /// 转移日期
        /// </summary>
        public DateTime? TransferDate { get; set; }

        /// <summary>
        /// 单据状态
        /// </summary>
        public int TransferState { get; set; }

        /// <summary>
        /// 单据状态文本
        /// </summary>
        public string TransferStateText
        {
            get
            {
                return TransferState switch
                {
                    0 => "草稿",
                    1 => "已确认",
                    2 => "已完成",
                    _ => "未知"
                };
            }
        }

        /// <summary>
        /// 备注
        /// </summary>
        public string? Remark { get; set; }
    }
} 